package org.point.common.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 时间转换工具类
 * 
 * @author Szqiu
 *
 */
public class DateConvertUtil {

	/**
	 * 将传入的 Integer 时间类型转 String
	 * 
	 * @param time
	 * @return 返回时间类型 yyyy-MM-dd
	 */
	public String convertStrShort(Integer time) {
		Date date = new Date(time);
		SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
		String timeStr = simpleDateFormat.format(date);
		return timeStr;
	}

	/**
	 * 将传入的 Integer 时间类型转 String
	 * 
	 * @param time
	 * @return 返回时间类型 yyyy-MM-dd HH:mm:ss
	 */
	public String convertStr(Integer time) {
		Date date = new Date(time);
		SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		String timeStr = simpleDateFormat.format(date);
		return timeStr;
	}

	/**
	 * 
	 * @Title: convertTime @Description: TODO(将传入时间格式为yyyy-MM-dd
	 *         HH:mm:ss的字符串转为时间Date格式) @param @param time @param @return
	 *         设定文件 @return Date 返回类型 @throws
	 */
	public Date convertTime(String timeStr) {
		Date time = null;
		try {
			SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
			time = simpleDateFormat.parse(timeStr);
		} catch (ParseException e) {
			throw new RuntimeException("字符串转时间格式出错！", e);
		}
		return time;
	}

	/**
	 * 将传入的时间类型数据转换为Integer类型
	 * 
	 * @param time
	 * @return
	 */
	public Integer converInteger(Date time) {
		Long d = time.getTime();
		int value = d.intValue();
		return value;
	}

	/**
	 * 将传入的时间类型数据转换为Long类型
	 * 
	 * @param time
	 * @return
	 */
	public Long converLong(Date time) {
		Long d = time.getTime();
		return d;
	}

	/**
	 * 将时间字符串转为时间戳
	 */
	public int converTimeStemp(String time) {

		String re_time = null;
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		Date d;
		try {
			d = sdf.parse(time);
			long l = d.getTime();
			String str = String.valueOf(l);
			re_time = str.substring(0, 10);

		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return Integer.parseInt(re_time);

	}

}
